package com.hc.vo;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import javax.validation.constraints.NotBlank;
import java.time.LocalDate;

/**
 * 用户信息vo
 */
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
@ApiModel(description = "用户信息对象")
public class UserVO {

    /**
     * 主键
     */
    @ApiModelProperty(value = "主键")
    private Integer id;

    /**
     * 用户昵称
     */
    @NotBlank(message = "用户名不能为空")
    @ApiModelProperty(name = "name", value = "用户名", dataType = "String")
    private String name;

    /**
     * 用户昵称
     */
    @NotBlank(message = "昵称不能为空")
    @ApiModelProperty(name = "nickname", value = "昵称", dataType = "String")
    private String nickname;

    /**
     * 电话
     */
    @NotBlank(message = "电话不能为空")
    @ApiModelProperty(value = "电话")
    private String tel;

    /**
     * 性别, 1:男，0:女
     */
    @NotBlank(message = "性别不能为空")
    @ApiModelProperty(value = "性别, 0:未知，1:男， 2:女")
    private Integer gender;

    /**
     * 生日
     */
    @NotBlank(message = "生日不能为空")
    @ApiModelProperty(value = "生日")
    private LocalDate birth;

    /**
     * 邮箱
     */
    @NotBlank(message = "邮箱不能为空")
    @ApiModelProperty(value = "邮箱")
    private String email;
    /**
     * 主键
     */
    @NotBlank(message = "所在地区不能为空")
    @ApiModelProperty(value = "所在地区编号")
    private Integer townId;

    /**
     * 个人网站
     */
    @ApiModelProperty(name = "website", value = "个人网站", dataType = "String")
    private String website;

    /**
     * 用户简介
     */
    @ApiModelProperty(name = "intro", value = "介绍", dataType = "String")
    private String intro;
}
